home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1993 July / InfoMagic USENET CD-ROM July 1993.ISO / sources / x / volume6 / xfig2 / patch5a < prev    next >
Encoding:
Internet Message Format  |  1993-04-28  |  60.9 KB

  1. From: envbvs@epb2.lbl.gov (Brian V. Smith)
  2. Newsgroups: comp.sources.x
  3. Subject: v06i050: xfig 2.0 (part 1/7), Patch5
  4. Message-ID: <133691@sun.Eng.Sun.COM>
  5. Date: 30 Mar 90 04:31:50 GMT
  6. Approved: argv@sun.com
  7.  
  8. Submitted-by: envbvs@epb2.lbl.gov (Brian V. Smith)
  9. Posting-number: Volume 6, Issue 50
  10. Archive-name: xfig2/patch5a
  11. Patch-To: xfig2: Volume 6, Issue 9-24,34-36
  12.  
  13. Here is part 1/7 of patch 5 for xfig 2.0.  
  14.  
  15. Changes from patchlevel 4:
  16.  
  17. o Line widths of zero now allowed for drawing borderless objects
  18. o Resources now parsed in more portable way
  19. o Variable "compound" changed to "cmpnd" in drag.c and search.c because 
  20.     SunOs 4.1 has function called compound()
  21. o Unknown "-" options no longer parsed as file name
  22. o Filled areas now drawn opaquely instead of transparently
  23. o Ruler arrows now drawn correctly
  24. o Area fill for rounded corner boxes displays properly
  25. o Lower panel buttons and rulers slightly smaller to allow 9.5 inch tall
  26.   canvas in portrait mode on screens that are "only" 864 pixels tall
  27. o Imakefile now uses XawClientDepLibs instead of $(DEPXAWLIB) $(DEPXMUlIB) ...
  28. o -1 for area fill (no fill) in TransFig files handled properly
  29. o u_int defined as uint for SYSV systems
  30. o 'figure_modified' flag cleared when editing new file
  31. o If "save in" is done and there is no current file name, then the
  32.   current file name is set to the one specified in the save
  33. o -track default is now True as man entry states
  34. o side panel resource renamed to side_panel
  35. o fixed bug in f2ps where filled arcs weren't filled
  36. o line width and font support for f2p (pic)
  37.   Thanks to Dave Davey for these additions
  38. _____________________________________
  39. Brian V. Smith    (bvsmith@lbl.gov)
  40. Lawrence Berkeley Laboratory
  41. I don't speak for LBL, these non-opinions are all mine.
  42.  
  43. ----------------------- cut --------------------------
  44. #! /bin/sh
  45. # This is a shell archive.  Remove anything before this line, then unpack
  46. # it by saving it into a file and typing "sh file".  To overwrite existing
  47. # files, type "sh file -c".  You can also feed this as standard input via
  48. # unshar, or by typing "sh <file", e.g..  If this archive is complete, you
  49. # will see the following message at the end:
  50. #        "End of archive 1 (of 7)."
  51. # Contents:  addpt.c.diff arcbox.c.diff autoarrow.c.diff bitmap.c.diff
  52. #   box.c.diff canvas.c.diff changethick.c.diff char.c.diff
  53. #   const.h.diff corner.c.diff curve.c.diff deletept.c.diff fig.h.diff
  54. #   file.c.diff font.c.diff global.c.diff glue.c.diff graphics.c.diff
  55. #   grid.c.diff move.c.diff msgsw.c.diff patchlevel.h.diff
  56. #   popup.c.diff read1_3.c.diff redisplay.c.diff remove.c.diff
  57. #   resources.h.diff troff_fonts.c.diff troff_fonts.h.diff
  58. #   troff_ft_codes.diff
  59. # Wrapped by envbvs@epb2.lbl.gov on Wed Mar 28 09:04:25 1990
  60. PATH=/bin:/usr/bin:/usr/ucb ; export PATH
  61. if test -f 'addpt.c.diff' -a "${1}" != "-c" ; then 
  62.   echo shar: Will not clobber existing file \"'addpt.c.diff'\"
  63. else
  64. echo shar: Extracting \"'addpt.c.diff'\" \(2035 characters\)
  65. sed "s/^X//" >'addpt.c.diff' <<'END_OF_FILE'
  66. X*** addpt.c.p5    Tue Jan 16 17:21:01 1990
  67. X--- addpt.c    Sat Mar 17 13:32:13 1990
  68. X***************
  69. X*** 151,157 ****
  70. X          return(-1);
  71. X          }
  72. X          }
  73. X-     pw_batch_on(canvas_pixwin);
  74. X      if (pointmarker_shown) toggle_splinepointmarker(spline);  
  75. X      draw_spline(spline, ERASE); /* erase old spline */
  76. X      if (left_point == NULL) {
  77. X--- 151,156 ----
  78. X***************
  79. X*** 171,177 ****
  80. X  
  81. X      draw_spline(spline, PAINT); /* draw the modified spline */
  82. X      if (pointmarker_shown) toggle_splinepointmarker(spline);  
  83. X-     pw_batch_off(canvas_pixwin);
  84. X      reset_cursor();
  85. X      set_modifiedflag();
  86. X      return(1);
  87. X--- 170,175 ----
  88. X***************
  89. X*** 191,199 ****
  90. X          right_point = right_point->next;
  91. X          }
  92. X      if (left_point != NULL && right_point != NULL)
  93. X!         draw_line_segment(cur_line->style, cur_line->style_val,
  94. X!         left_point->x, left_point->y,
  95. X!         right_point->x, right_point->y, INV_PAINT, 1);
  96. X      draw_addedlink(INV_PAINT);
  97. X      if (latexline_mode || latexarrow_mode) {
  98. X          canvas_locmove_proc = latex_elasticline;
  99. X--- 189,197 ----
  100. X          right_point = right_point->next;
  101. X          }
  102. X      if (left_point != NULL && right_point != NULL)
  103. X!         pw_vector(canvas_pixwin, left_point->x, left_point->y,
  104. X!         right_point->x, right_point->y, INV_PAINT, 
  105. X!         cur_line->thickness, cur_line->style, cur_line->style_val);
  106. X      draw_addedlink(INV_PAINT);
  107. X      if (latexline_mode || latexarrow_mode) {
  108. X          canvas_locmove_proc = latex_elasticline;
  109. X***************
  110. X*** 314,324 ****
  111. X  {
  112. X      if (left_point != NULL) {
  113. X          pw_vector(canvas_pixwin, left_point->x, left_point->y,
  114. X!             cur_x, cur_y, op, 1);
  115. X         }
  116. X      if (right_point != NULL) {
  117. X          pw_vector(canvas_pixwin, right_point->x, 
  118. X!             right_point->y, cur_x, cur_y, op, 1);
  119. X          }
  120. X      }
  121. X  
  122. X--- 312,322 ----
  123. X  {
  124. X      if (left_point != NULL) {
  125. X          pw_vector(canvas_pixwin, left_point->x, left_point->y,
  126. X!             cur_x, cur_y, op, 1, SOLID_LINE, 0.0);
  127. X         }
  128. X      if (right_point != NULL) {
  129. X          pw_vector(canvas_pixwin, right_point->x, 
  130. X!             right_point->y, cur_x, cur_y, op, 1, SOLID_LINE, 0.0);
  131. X          }
  132. X      }
  133. X  
  134. END_OF_FILE
  135. if test 2035 -ne `wc -c <'addpt.c.diff'`; then
  136.     echo shar: \"'addpt.c.diff'\" unpacked with wrong size!
  137. fi
  138. # end of 'addpt.c.diff'
  139. fi
  140. if test -f 'arcbox.c.diff' -a "${1}" != "-c" ; then 
  141.   echo shar: Will not clobber existing file \"'arcbox.c.diff'\"
  142. else
  143. echo shar: Extracting \"'arcbox.c.diff'\" \(2104 characters\)
  144. sed "s/^X//" >'arcbox.c.diff' <<'END_OF_FILE'
  145. X*** arcbox.c.p5    Tue Jan 16 17:22:15 1990
  146. X--- arcbox.c    Mon Mar 26 15:57:18 1990
  147. X***************
  148. X*** 14,20 ****
  149. X  #include "object.h"
  150. X  #include "paintop.h"
  151. X  
  152. X! extern int        cur_line_style, line_thickness;
  153. X  extern float        cur_styleval;
  154. X  extern int        cur_color;
  155. X  extern int        cur_areafill;
  156. X--- 14,20 ----
  157. X  #include "object.h"
  158. X  #include "paintop.h"
  159. X  
  160. X! extern int        line_style, line_thickness;
  161. X  extern float        cur_styleval;
  162. X  extern int        cur_color;
  163. X  extern int        cur_areafill;
  164. X***************
  165. X*** 56,62 ****
  166. X      canvas_locmove_proc = elastic_box;
  167. X      canvas_leftbut_proc = canvas_rightbut_proc = null_proc;
  168. X      canvas_middlebut_proc = create_arc_boxobject;
  169. X!     draw_rectbox(fix_x, fix_y, cur_x, cur_y, INV_PAINT, 1);
  170. X      set_temp_cursor(&null_cursor);
  171. X      set_action_on();
  172. X      }
  173. X--- 56,62 ----
  174. X      canvas_locmove_proc = elastic_box;
  175. X      canvas_leftbut_proc = canvas_rightbut_proc = null_proc;
  176. X      canvas_middlebut_proc = create_arc_boxobject;
  177. X!     draw_rectbox(fix_x, fix_y, cur_x, cur_y, INV_PAINT);
  178. X      set_temp_cursor(&null_cursor);
  179. X      set_action_on();
  180. X      }
  181. X***************
  182. X*** 68,74 ****
  183. X      F_point    *point;
  184. X      int tmp;
  185. X  
  186. X!     draw_rectbox(fix_x, fix_y, cur_x, cur_y, INV_PAINT, 1);
  187. X  
  188. X      
  189. X      if ((Point_malloc(point)) == NULL) {
  190. X--- 68,74 ----
  191. X      F_point    *point;
  192. X      int tmp;
  193. X  
  194. X!     draw_rectbox(fix_x, fix_y, cur_x, cur_y, INV_PAINT);
  195. X  
  196. X      
  197. X      if ((Point_malloc(point)) == NULL) {
  198. X***************
  199. X*** 76,93 ****
  200. X          put_msg(Err_mem);
  201. X          return;
  202. X          }
  203. X-     /* sort x and y so that the upper left is first */
  204. X-     /*
  205. X-     if (x > fix_x)
  206. X-         { 
  207. X-         tmp = x; x = fix_x ; fix_x = tmp;
  208. X-         }
  209. X- 
  210. X-     if (y > fix_y)
  211. X-         {
  212. X-         tmp = y; y = fix_y ; fix_y = tmp;
  213. X-         }
  214. X-     */
  215. X      point->x = x;
  216. X      point->y = y;
  217. X      point->next = NULL;
  218. X--- 76,81 ----
  219. X***************
  220. X*** 94,100 ****
  221. X  
  222. X      Line_malloc(box);
  223. X      box->type = T_ARC_BOX;
  224. X!     box->style = cur_line_style;
  225. X      box->thickness = line_thickness;
  226. X      box->color = cur_color;
  227. X      box->depth = NULL;
  228. X--- 82,88 ----
  229. X  
  230. X      Line_malloc(box);
  231. X      box->type = T_ARC_BOX;
  232. X!     box->style = line_style;
  233. X      box->thickness = line_thickness;
  234. X      box->color = cur_color;
  235. X      box->depth = NULL;
  236. END_OF_FILE
  237. if test 2104 -ne `wc -c <'arcbox.c.diff'`; then
  238.     echo shar: \"'arcbox.c.diff'\" unpacked with wrong size!
  239. fi
  240. # end of 'arcbox.c.diff'
  241. fi
  242. if test -f 'autoarrow.c.diff' -a "${1}" != "-c" ; then 
  243.   echo shar: Will not clobber existing file \"'autoarrow.c.diff'\"
  244. else
  245. echo shar: Extracting \"'autoarrow.c.diff'\" \(2510 characters\)
  246. sed "s/^X//" >'autoarrow.c.diff' <<'END_OF_FILE'
  247. X*** autoarrow.c.p5    Tue Jan 16 17:21:03 1990
  248. X--- autoarrow.c    Fri Mar 16 14:19:11 1990
  249. X***************
  250. X*** 264,270 ****
  251. X              selected_point->y, spline->back_arrow, ERASE);
  252. X          pw_vector(canvas_pixwin, selected_point->x, selected_point->y,
  253. X              round((p->x+selected_point->x)/2.0),
  254. X!             round((p->y+selected_point->y)/2.0), PAINT, spline->thickness);
  255. X          }
  256. X          else {
  257. X          F_control    *a, *b;
  258. X--- 264,271 ----
  259. X              selected_point->y, spline->back_arrow, ERASE);
  260. X          pw_vector(canvas_pixwin, selected_point->x, selected_point->y,
  261. X              round((p->x+selected_point->x)/2.0),
  262. X!             round((p->y+selected_point->y)/2.0), PAINT, 
  263. X!             spline->thickness, spline->style, spline->style_val);
  264. X          }
  265. X          else {
  266. X          F_control    *a, *b;
  267. X***************
  268. X*** 276,282 ****
  269. X          bezier_spline(
  270. X              (float)selected_point->x, (float)selected_point->y,
  271. X              a->rx, a->ry, b->lx, b->ly, (float)p->x, (float)p->y,
  272. X!             PAINT,spline->thickness);
  273. X          }
  274. X          free((char*)spline->back_arrow);
  275. X          spline->back_arrow = NULL;
  276. X--- 277,283 ----
  277. X          bezier_spline(
  278. X              (float)selected_point->x, (float)selected_point->y,
  279. X              a->rx, a->ry, b->lx, b->ly, (float)p->x, (float)p->y,
  280. X!             PAINT,spline->thickness, spline->style, spline->style_val);
  281. X          }
  282. X          free((char*)spline->back_arrow);
  283. X          spline->back_arrow = NULL;
  284. X***************
  285. X*** 291,298 ****
  286. X              spline->for_arrow, ERASE);
  287. X          pw_vector(canvas_pixwin, selected_point->x, selected_point->y,
  288. X              round((selected_point->x+left_point->x)/2.0),
  289. X!             round((selected_point->y+left_point->y)/2.0),
  290. X!             PAINT, spline->thickness);
  291. X          }
  292. X          else {
  293. X          F_control    *a, *b;
  294. X--- 292,299 ----
  295. X              spline->for_arrow, ERASE);
  296. X          pw_vector(canvas_pixwin, selected_point->x, selected_point->y,
  297. X              round((selected_point->x+left_point->x)/2.0),
  298. X!             round((selected_point->y+left_point->y)/2.0), 
  299. X!             PAINT, spline->thickness, spline->style, spline->style_val);
  300. X          }
  301. X          else {
  302. X          F_control    *a, *b;
  303. X***************
  304. X*** 305,311 ****
  305. X              (float)left_point->x, (float)left_point->y,
  306. X              a->rx, a->ry, b->lx, b->ly,
  307. X              (float)selected_point->x, (float)selected_point->y,
  308. X!             PAINT,spline->thickness);
  309. X          }
  310. X          free((char*)spline->for_arrow);
  311. X          spline->for_arrow = NULL;
  312. X--- 306,312 ----
  313. X              (float)left_point->x, (float)left_point->y,
  314. X              a->rx, a->ry, b->lx, b->ly,
  315. X              (float)selected_point->x, (float)selected_point->y,
  316. X!             PAINT,spline->thickness, spline->style, spline->style_val);
  317. X          }
  318. X          free((char*)spline->for_arrow);
  319. X          spline->for_arrow = NULL;
  320. END_OF_FILE
  321. if test 2510 -ne `wc -c <'autoarrow.c.diff'`; then
  322.     echo shar: \"'autoarrow.c.diff'\" unpacked with wrong size!
  323. fi
  324. # end of 'autoarrow.c.diff'
  325. fi
  326. if test -f 'bitmap.c.diff' -a "${1}" != "-c" ; then 
  327.   echo shar: Will not clobber existing file \"'bitmap.c.diff'\"
  328. else
  329. echo shar: Extracting \"'bitmap.c.diff'\" \(1118 characters\)
  330. sed "s/^X//" >'bitmap.c.diff' <<'END_OF_FILE'
  331. X*** bitmap.c.p5    Fri Feb 16 10:59:40 1990
  332. X--- bitmap.c    Thu Mar 15 15:26:10 1990
  333. X***************
  334. X*** 15,23 ****
  335. X  extern F_compound    objects;
  336. X  
  337. X  extern int        errno;
  338. X- extern int        DEBUG;
  339. X  extern int        pointmarker_shown;
  340. X  extern int        compoundbox_shown;
  341. X  
  342. X  extern char        *sys_errlist[];
  343. X  extern int        sys_nerr, errno;
  344. X--- 15,23 ----
  345. X  extern F_compound    objects;
  346. X  
  347. X  extern int        errno;
  348. X  extern int        pointmarker_shown;
  349. X  extern int        compoundbox_shown;
  350. X+ extern appresStruct    appres;
  351. X  
  352. X  extern char        *sys_errlist[];
  353. X  extern int        sys_nerr, errno;
  354. X***************
  355. X*** 78,85 ****
  356. X      /* Assume that there is at least one object */
  357. X      compound_bound(&objects, &xmin, &ymin, &xmax, &ymax);
  358. X  
  359. X!     if (DEBUG) {
  360. X!         draw_rectbox(xmin, ymin, xmax, ymax, INV_PAINT, 1);
  361. X          }
  362. X      put_msg("Sorry, write_bitmap not implemented for X11 yet");
  363. X      }
  364. X--- 78,85 ----
  365. X      /* Assume that there is at least one object */
  366. X      compound_bound(&objects, &xmin, &ymin, &xmax, &ymax);
  367. X  
  368. X!     if (appres.DEBUG) {
  369. X!         draw_rectbox(xmin, ymin, xmax, ymax, INV_PAINT);
  370. X          }
  371. X      put_msg("Sorry, write_bitmap not implemented for X11 yet");
  372. X      }
  373. END_OF_FILE
  374. if test 1118 -ne `wc -c <'bitmap.c.diff'`; then
  375.     echo shar: \"'bitmap.c.diff'\" unpacked with wrong size!
  376. fi
  377. # end of 'bitmap.c.diff'
  378. fi
  379. if test -f 'box.c.diff' -a "${1}" != "-c" ; then 
  380.   echo shar: Will not clobber existing file \"'box.c.diff'\"
  381. else
  382. echo shar: Extracting \"'box.c.diff'\" \(2807 characters\)
  383. sed "s/^X//" >'box.c.diff' <<'END_OF_FILE'
  384. X*** box.c.p5    Tue Jan 16 17:21:03 1990
  385. X--- box.c    Thu Mar 15 15:26:57 1990
  386. X***************
  387. X*** 14,20 ****
  388. X  #include "object.h"
  389. X  #include "paintop.h"
  390. X  
  391. X! extern int        cur_line_style, line_thickness;
  392. X  extern float        cur_styleval;
  393. X  extern int        cur_color;
  394. X  extern int        cur_areafill;
  395. X--- 14,20 ----
  396. X  #include "object.h"
  397. X  #include "paintop.h"
  398. X  
  399. X! extern int        line_style, line_thickness;
  400. X  extern float        cur_styleval;
  401. X  extern int        cur_color;
  402. X  extern int        cur_areafill;
  403. X***************
  404. X*** 55,81 ****
  405. X      canvas_locmove_proc = elastic_box;
  406. X      canvas_leftbut_proc = canvas_rightbut_proc = null_proc;
  407. X      canvas_middlebut_proc = create_boxobject;
  408. X!     draw_rectbox(fix_x, fix_y, cur_x, cur_y, INV_PAINT, 1);
  409. X      set_temp_cursor(&null_cursor);
  410. X      set_action_on();
  411. X      }
  412. X  
  413. X! draw_rectbox(x1, y1, x2, y2, op, thick)
  414. X! int    x1, y1, x2, y2, op, thick;
  415. X  {
  416. X!     pw_vector(canvas_pixwin, x1, y1, x1, y2, op, thick);
  417. X!     pw_vector(canvas_pixwin, x1, y2, x2, y2, op, thick);
  418. X!     pw_vector(canvas_pixwin, x2, y2, x2, y1, op, thick);
  419. X!     pw_vector(canvas_pixwin, x2, y1, x1, y1, op, thick);
  420. X      }
  421. X  
  422. X  elastic_box(x, y)
  423. X  int    x, y;
  424. X  {
  425. X!     draw_rectbox(fix_x, fix_y, cur_x, cur_y, INV_PAINT, 1);
  426. X      cur_x = x;  
  427. X      cur_y = y;
  428. X!     draw_rectbox(fix_x, fix_y, cur_x, cur_y, INV_PAINT, 1);
  429. X      }
  430. X  
  431. X  create_boxobject(x, y)
  432. X--- 55,81 ----
  433. X      canvas_locmove_proc = elastic_box;
  434. X      canvas_leftbut_proc = canvas_rightbut_proc = null_proc;
  435. X      canvas_middlebut_proc = create_boxobject;
  436. X!     draw_rectbox(fix_x, fix_y, cur_x, cur_y, INV_PAINT);
  437. X      set_temp_cursor(&null_cursor);
  438. X      set_action_on();
  439. X      }
  440. X  
  441. X! draw_rectbox(x1, y1, x2, y2, op)
  442. X! int    x1, y1, x2, y2, op;
  443. X  {
  444. X!     pw_vector(canvas_pixwin, x1, y1, x1, y2, op, 1, SOLID_LINE);
  445. X!     pw_vector(canvas_pixwin, x1, y2, x2, y2, op, 1, SOLID_LINE);
  446. X!     pw_vector(canvas_pixwin, x2, y2, x2, y1, op, 1, SOLID_LINE);
  447. X!     pw_vector(canvas_pixwin, x2, y1, x1, y1, op, 1, SOLID_LINE);
  448. X      }
  449. X  
  450. X  elastic_box(x, y)
  451. X  int    x, y;
  452. X  {
  453. X!     draw_rectbox(fix_x, fix_y, cur_x, cur_y, INV_PAINT);
  454. X      cur_x = x;  
  455. X      cur_y = y;
  456. X!     draw_rectbox(fix_x, fix_y, cur_x, cur_y, INV_PAINT);
  457. X      }
  458. X  
  459. X  create_boxobject(x, y)
  460. X***************
  461. X*** 84,90 ****
  462. X      F_line    *box;
  463. X      F_point    *point;
  464. X  
  465. X!     draw_rectbox(fix_x, fix_y, cur_x, cur_y, INV_PAINT, 1);
  466. X  
  467. X      
  468. X      if ((Point_malloc(point)) == NULL) {
  469. X--- 84,90 ----
  470. X      F_line    *box;
  471. X      F_point    *point;
  472. X  
  473. X!     draw_rectbox(fix_x, fix_y, cur_x, cur_y, INV_PAINT);
  474. X  
  475. X      
  476. X      if ((Point_malloc(point)) == NULL) {
  477. X***************
  478. X*** 98,104 ****
  479. X  
  480. X      Line_malloc(box);
  481. X      box->type = T_BOX;
  482. X!     box->style = cur_line_style;
  483. X      box->thickness = line_thickness;
  484. X      box->color = cur_color;
  485. X      box->depth = NULL;
  486. X--- 98,104 ----
  487. X  
  488. X      Line_malloc(box);
  489. X      box->type = T_BOX;
  490. X!     box->style = line_style;
  491. X      box->thickness = line_thickness;
  492. X      box->color = cur_color;
  493. X      box->depth = NULL;
  494. END_OF_FILE
  495. if test 2807 -ne `wc -c <'box.c.diff'`; then
  496.     echo shar: \"'box.c.diff'\" unpacked with wrong size!
  497. fi
  498. # end of 'box.c.diff'
  499. fi
  500. if test -f 'canvas.c.diff' -a "${1}" != "-c" ; then 
  501.   echo shar: Will not clobber existing file \"'canvas.c.diff'\"
  502. else
  503. echo shar: Extracting \"'canvas.c.diff'\" \(2045 characters\)
  504. sed "s/^X//" >'canvas.c.diff' <<'END_OF_FILE'
  505. X*** canvas.c.p5    Wed Mar  7 11:47:11 1990
  506. X--- canvas.c    Tue Mar 20 17:28:54 1990
  507. X***************
  508. X*** 39,55 ****
  509. X  
  510. X  static Arg      canvas_args[] =
  511. X  {
  512. X!     /* 0 */ { XtNx, (XtArgVal)0 },
  513. X!     /* 1 */ { XtNy, (XtArgVal)0 },
  514. X!     /* 2 */ { XtNlabel, (XtArgVal)"" },
  515. X!     /* 3 */ { XtNwidth, (XtArgVal)0 },
  516. X!     /* 4 */ { XtNheight, (XtArgVal)0 },
  517. X!     /* 5 */ { XtNfromHoriz, (XtArgVal)NULL },
  518. X!     /* 6 */ { XtNhorizDistance, (XtArgVal)0 },
  519. X!     /* 7 */ { XtNfromVert, (XtArgVal)NULL },
  520. X!     /* 8 */ { XtNvertDistance, (XtArgVal)0 },
  521. X!     /* 9 */ { XtNtop, (XtArgVal)XtChainTop },
  522. X!     /*10 */ { XtNleft, (XtArgVal)XtChainLeft },
  523. X  };
  524. X  
  525. X  static void 
  526. X--- 39,53 ----
  527. X  
  528. X  static Arg      canvas_args[] =
  529. X  {
  530. X!     /* 0 */ { XtNlabel, (XtArgVal)"" },
  531. X!     /* 1 */ { XtNwidth, (XtArgVal) 0 },
  532. X!     /* 2 */ { XtNheight, (XtArgVal) 0 },
  533. X!     /* 3 */ { XtNfromHoriz, (XtArgVal)NULL },
  534. X!     /* 4 */ { XtNhorizDistance, (XtArgVal) 0 },
  535. X!     /* 5 */ { XtNfromVert, (XtArgVal)NULL },
  536. X!     /* 6 */ { XtNvertDistance, (XtArgVal) 0 },
  537. X!     /* 7 */ { XtNtop,  (XtArgVal)XtChainTop  },
  538. X!     /* 8 */ { XtNleft, (XtArgVal)XtChainLeft },
  539. X  };
  540. X  
  541. X  static void 
  542. X***************
  543. X*** 108,117 ****
  544. X  {
  545. X      XColor    fixcolors[2];
  546. X      
  547. X!     canvas_args[3].value = CANVAS_WIDTH;
  548. X!     canvas_args[4].value = CANVAS_HEIGHT;
  549. X!     canvas_args[5].value = (XtArgVal)panel_sw;    /* to the right of the panel */
  550. X!     canvas_args[7].value = (XtArgVal)topruler_sw;    /* below the top ruler */
  551. X      canvas_sw = XtCreateWidget("canvas", labelWidgetClass, tool,
  552. X          canvas_args, XtNumber(canvas_args));
  553. X      XtGetValues(canvas_sw, canvas_color_args, XtNumber(canvas_color_args));
  554. X--- 106,115 ----
  555. X  {
  556. X      XColor    fixcolors[2];
  557. X      
  558. X!     canvas_args[1].value = CANVAS_WIDTH;
  559. X!     canvas_args[2].value = CANVAS_HEIGHT;
  560. X!     canvas_args[3].value = (XtArgVal)panel_sw;    /* to the right of the panel */
  561. X!     canvas_args[5].value = (XtArgVal)topruler_sw;    /* below the top ruler */
  562. X      canvas_sw = XtCreateWidget("canvas", labelWidgetClass, tool,
  563. X          canvas_args, XtNumber(canvas_args));
  564. X      XtGetValues(canvas_sw, canvas_color_args, XtNumber(canvas_color_args));
  565. END_OF_FILE
  566. if test 2045 -ne `wc -c <'canvas.c.diff'`; then
  567.     echo shar: \"'canvas.c.diff'\" unpacked with wrong size!
  568. fi
  569. # end of 'canvas.c.diff'
  570. fi
  571. if test -f 'changethick.c.diff' -a "${1}" != "-c" ; then 
  572.   echo shar: Will not clobber existing file \"'changethick.c.diff'\"
  573. else
  574. echo shar: Extracting \"'changethick.c.diff'\" \(1453 characters\)
  575. sed "s/^X//" >'changethick.c.diff' <<'END_OF_FILE'
  576. X*** changethick.c.p5    Tue Jan 16 17:22:15 1990
  577. X--- changethick.c    Sat Mar 17 13:32:46 1990
  578. X***************
  579. X*** 71,81 ****
  580. X          }
  581. X      else if ((e = ellipse_search(x, y, TOLERANCE, &px, &py)) != NULL) {
  582. X          win_setmouseposition(canvas_swfd, px, py);
  583. X-         pw_batch_on(canvas_pixwin);
  584. X          draw_ellipse(e, background_color);
  585. X          e->thickness = line_thickness;
  586. X          draw_ellipse(e, foreground_color);
  587. X-         pw_batch_off(canvas_pixwin);
  588. X          clean_up();
  589. X          set_action_object(F_CHANGE_THICK, O_ELLIPSE);
  590. X          set_latestellipse(e);
  591. X--- 71,79 ----
  592. X***************
  593. X*** 83,93 ****
  594. X          }
  595. X      else if ((a = arc_search(x, y, TOLERANCE, &px, &py)) != NULL) {
  596. X          win_setmouseposition(canvas_swfd, px, py);
  597. X-         pw_batch_on(canvas_pixwin);
  598. X          draw_arc(a, background_color);
  599. X          a->thickness = line_thickness;
  600. X          draw_arc(a, foreground_color);
  601. X-         pw_batch_off(canvas_pixwin);
  602. X          clean_up();
  603. X          set_action_object(F_CHANGE_THICK, O_ARC);
  604. X          set_latestarc(a);
  605. X--- 81,89 ----
  606. X***************
  607. X*** 95,105 ****
  608. X          }
  609. X      else if ((s = spline_search(x, y, TOLERANCE, &px, &py)) != NULL) {
  610. X          win_setmouseposition(canvas_swfd, px, py);
  611. X-         pw_batch_on(canvas_pixwin);
  612. X          draw_spline(s, ERASE);
  613. X          s->thickness = line_thickness;
  614. X          draw_spline(s, PAINT);
  615. X-         pw_batch_off(canvas_pixwin);
  616. X          clean_up();
  617. X          set_action_object(F_CHANGE_THICK, O_SPLINE);
  618. X          set_latestspline(s);
  619. X--- 91,99 ----
  620. END_OF_FILE
  621. if test 1453 -ne `wc -c <'changethick.c.diff'`; then
  622.     echo shar: \"'changethick.c.diff'\" unpacked with wrong size!
  623. fi
  624. # end of 'changethick.c.diff'
  625. fi
  626. if test -f 'char.c.diff' -a "${1}" != "-c" ; then 
  627.   echo shar: Will not clobber existing file \"'char.c.diff'\"
  628. else
  629. echo shar: Extracting \"'char.c.diff'\" \(412 characters\)
  630. sed "s/^X//" >'char.c.diff' <<'END_OF_FILE'
  631. X*** char.c.p5    Wed Feb 28 12:11:43 1990
  632. X--- char.c    Fri Mar 16 14:20:34 1990
  633. X***************
  634. X*** 36,42 ****
  635. X  draw_cursor(x, y)
  636. X  int    x, y;
  637. X  {
  638. X!     pw_vector(pw, x, y, x, y-char_ht, INV_PAINT, 1);
  639. X      }
  640. X  
  641. X  initialize_char_handler(p, cr, bx, by)
  642. X--- 36,42 ----
  643. X  draw_cursor(x, y)
  644. X  int    x, y;
  645. X  {
  646. X!     pw_vector(pw, x, y, x, y-char_ht, INV_PAINT, 1, SOLID_LINE, 0.0);
  647. X      }
  648. X  
  649. X  initialize_char_handler(p, cr, bx, by)
  650. END_OF_FILE
  651. if test 412 -ne `wc -c <'char.c.diff'`; then
  652.     echo shar: \"'char.c.diff'\" unpacked with wrong size!
  653. fi
  654. # end of 'char.c.diff'
  655. fi
  656. if test -f 'const.h.diff' -a "${1}" != "-c" ; then 
  657.   echo shar: Will not clobber existing file \"'const.h.diff'\"
  658. else
  659. echo shar: Extracting \"'const.h.diff'\" \(1204 characters\)
  660. sed "s/^X//" >'const.h.diff' <<'END_OF_FILE'
  661. X*** const.h.p5    Thu Mar  8 16:33:41 1990
  662. X--- const.h    Tue Mar 20 13:33:55 1990
  663. X***************
  664. X*** 10,16 ****
  665. X  #define        PIX_PER_CM        30 /* ((int)(PIX_PER_INCH / 2.54 + (5.0/2))) */
  666. X                        
  667. X  /* Portrait dimensions */
  668. X! #define        DEF_CANVAS_HEIGHT_P    9.25*PIX_PER_INCH
  669. X  #define        DEF_CANVAS_WIDTH_P    8*PIX_PER_INCH
  670. X  
  671. X  /* Landscape dimensions */
  672. X--- 10,16 ----
  673. X  #define        PIX_PER_CM        30 /* ((int)(PIX_PER_INCH / 2.54 + (5.0/2))) */
  674. X                        
  675. X  /* Portrait dimensions */
  676. X! #define        DEF_CANVAS_HEIGHT_P    9.5*PIX_PER_INCH
  677. X  #define        DEF_CANVAS_WIDTH_P    8*PIX_PER_INCH
  678. X  
  679. X  /* Landscape dimensions */
  680. X***************
  681. X*** 17,25 ****
  682. X  #define        DEF_CANVAS_HEIGHT_L    8*PIX_PER_INCH
  683. X  #define        DEF_CANVAS_WIDTH_L    10*PIX_PER_INCH
  684. X  
  685. X! #define        RULER_WIDTH        24
  686. X  
  687. X! #define        MSG_HEIGHT        25
  688. X  
  689. X  #define        ICON_COLUMN_PORT    3    /* number of switches wide in panel */
  690. X  #define        ICON_COLUMN_LAND    3    /* same for landscape mode */
  691. X--- 17,25 ----
  692. X  #define        DEF_CANVAS_HEIGHT_L    8*PIX_PER_INCH
  693. X  #define        DEF_CANVAS_WIDTH_L    10*PIX_PER_INCH
  694. X  
  695. X! #define        RULER_WIDTH        20
  696. X  
  697. X! #define        MSG_HEIGHT        21
  698. X  
  699. X  #define        ICON_COLUMN_PORT    3    /* number of switches wide in panel */
  700. X  #define        ICON_COLUMN_LAND    3    /* same for landscape mode */
  701. END_OF_FILE
  702. if test 1204 -ne `wc -c <'const.h.diff'`; then
  703.     echo shar: \"'const.h.diff'\" unpacked with wrong size!
  704. fi
  705. # end of 'const.h.diff'
  706. fi
  707. if test -f 'corner.c.diff' -a "${1}" != "-c" ; then 
  708.   echo shar: Will not clobber existing file \"'corner.c.diff'\"
  709. else
  710. echo shar: Extracting \"'corner.c.diff'\" \(1823 characters\)
  711. sed "s/^X//" >'corner.c.diff' <<'END_OF_FILE'
  712. X*** corner.c.p5    Tue Jan 16 17:21:33 1990
  713. X--- corner.c    Thu Mar 15 15:27:08 1990
  714. X***************
  715. X*** 14,20 ****
  716. X  #include "object.h"
  717. X  #include "paintop.h"
  718. X  
  719. X! extern int        cur_line_style, line_thickness;
  720. X  extern float        cur_styleval;
  721. X  extern int        cur_color;
  722. X  extern int        fix_x, fix_y, cur_x, cur_y;
  723. X--- 14,20 ----
  724. X  #include "object.h"
  725. X  #include "paintop.h"
  726. X  
  727. X! extern int        line_style, line_thickness;
  728. X  extern float        cur_styleval;
  729. X  extern int        cur_color;
  730. X  extern int        fix_x, fix_y, cur_x, cur_y;
  731. X***************
  732. X*** 54,60 ****
  733. X      canvas_locmove_proc = elastic_box;
  734. X      canvas_leftbut_proc = canvas_rightbut_proc = null_proc;
  735. X      canvas_middlebut_proc = create_arc_cornerobject;
  736. X!     draw_rectbox(fix_x, fix_y, cur_x, cur_y, INV_PAINT, 1);
  737. X      set_temp_cursor(&null_cursor);
  738. X      set_action_on();
  739. X      }
  740. X--- 54,60 ----
  741. X      canvas_locmove_proc = elastic_box;
  742. X      canvas_leftbut_proc = canvas_rightbut_proc = null_proc;
  743. X      canvas_middlebut_proc = create_arc_cornerobject;
  744. X!     draw_rectbox(fix_x, fix_y, cur_x, cur_y, INV_PAINT);
  745. X      set_temp_cursor(&null_cursor);
  746. X      set_action_on();
  747. X      }
  748. X***************
  749. X*** 66,72 ****
  750. X      F_point    *point;
  751. X      int tmp;
  752. X  
  753. X!     draw_rectbox(fix_x, fix_y, cur_x, cur_y, INV_PAINT, 1);
  754. X  
  755. X      
  756. X      if ((Point_malloc(point)) == NULL) {
  757. X--- 66,72 ----
  758. X      F_point    *point;
  759. X      int tmp;
  760. X  
  761. X!     draw_rectbox(fix_x, fix_y, cur_x, cur_y, INV_PAINT);
  762. X  
  763. X      
  764. X      if ((Point_malloc(point)) == NULL) {
  765. X***************
  766. X*** 94,100 ****
  767. X  
  768. X      Line_malloc(corner);
  769. X      corner->type = T_ARC_CORNER;
  770. X!     corner->style = cur_line_style;
  771. X      corner->thickness = line_thickness;
  772. X      corner->color = cur_color;
  773. X      corner->depth = NULL;
  774. X--- 94,100 ----
  775. X  
  776. X      Line_malloc(corner);
  777. X      corner->type = T_ARC_CORNER;
  778. X!     corner->style = line_style;
  779. X      corner->thickness = line_thickness;
  780. X      corner->color = cur_color;
  781. X      corner->depth = NULL;
  782. END_OF_FILE
  783. if test 1823 -ne `wc -c <'corner.c.diff'`; then
  784.     echo shar: \"'corner.c.diff'\" unpacked with wrong size!
  785. fi
  786. # end of 'corner.c.diff'
  787. fi
  788. if test -f 'curve.c.diff' -a "${1}" != "-c" ; then 
  789.   echo shar: Will not clobber existing file \"'curve.c.diff'\"
  790. else
  791. echo shar: Extracting \"'curve.c.diff'\" \(1107 characters\)
  792. sed "s/^X//" >'curve.c.diff' <<'END_OF_FILE'
  793. X*** curve.c.p5    Fri Mar  9 10:56:32 1990
  794. X--- curve.c    Fri Mar 16 14:24:49 1990
  795. X***************
  796. X*** 33,42 ****
  797. X  static    XPoint    *points=NULL;
  798. X  
  799. X  curve(window, xstart, ystart, xend, yend, direction, 
  800. X!         a, b, xoff, yoff, val, thick, area_fill)
  801. X  Window    window;
  802. X  int    xstart, ystart, xend, yend, a, b, xoff, yoff;
  803. X! int    direction, val, thick, area_fill;
  804. X  {
  805. X      int    dfx, dfy, dfxx, dfyy;
  806. X      int    falpha, fx, fy, fxy, absfx, absfy, absfxy;
  807. X--- 33,43 ----
  808. X  static    XPoint    *points=NULL;
  809. X  
  810. X  curve(window, xstart, ystart, xend, yend, direction, 
  811. X!         a, b, xoff, yoff, val, thick, style, style_val, area_fill)
  812. X  Window    window;
  813. X  int    xstart, ystart, xend, yend, a, b, xoff, yoff;
  814. X! int    direction, val, thick, style, area_fill;
  815. X! float    style_val;
  816. X  {
  817. X      int    dfx, dfy, dfxx, dfyy;
  818. X      int    falpha, fx, fy, fxy, absfx, absfy, absfxy;
  819. X***************
  820. X*** 115,119 ****
  821. X              npoints++;
  822. X          }
  823. X      pw_lines(window, points, npoints, val? PAINT: ERASE,
  824. X!             thick, area_fill);
  825. X      }
  826. X--- 116,120 ----
  827. X              npoints++;
  828. X          }
  829. X      pw_lines(window, points, npoints, val? PAINT: ERASE,
  830. X!             thick, style, style_val, area_fill);
  831. X      }
  832. END_OF_FILE
  833. if test 1107 -ne `wc -c <'curve.c.diff'`; then
  834.     echo shar: \"'curve.c.diff'\" unpacked with wrong size!
  835. fi
  836. # end of 'curve.c.diff'
  837. fi
  838. if test -f 'deletept.c.diff' -a "${1}" != "-c" ; then 
  839.   echo shar: Will not clobber existing file \"'deletept.c.diff'\"
  840. else
  841. echo shar: Extracting \"'deletept.c.diff'\" \(932 characters\)
  842. sed "s/^X//" >'deletept.c.diff' <<'END_OF_FILE'
  843. X*** deletept.c.p5    Tue Jan 16 17:21:04 1990
  844. X--- deletept.c    Sat Mar 17 13:33:12 1990
  845. X***************
  846. X*** 122,128 ****
  847. X  
  848. X      set_temp_cursor(&wait_cursor);
  849. X      if (closed_spline(spline)) {
  850. X-         pw_batch_on(canvas_pixwin);
  851. X          if (pointmarker_shown) toggle_splinepointmarker(spline);
  852. X          draw_spline(spline, ERASE); /*erase the spline */
  853. X          if (left_point == NULL) { 
  854. X--- 122,127 ----
  855. X***************
  856. X*** 149,155 ****
  857. X          left_point->next = right_point;
  858. X          }
  859. X      else { /* open spline */
  860. X-         pw_batch_on(canvas_pixwin);
  861. X          if (pointmarker_shown) toggle_splinepointmarker(spline);
  862. X          draw_spline(spline, ERASE); /*erase the spline */
  863. X          if (left_point == NULL) 
  864. X--- 148,153 ----
  865. X***************
  866. X*** 168,174 ****
  867. X          }
  868. X      draw_spline(spline, PAINT);
  869. X      if (pointmarker_shown) toggle_splinepointmarker(spline);
  870. X-     pw_batch_off(canvas_pixwin);
  871. X      set_modifiedflag();
  872. X      reset_cursor();
  873. X      }
  874. X--- 166,171 ----
  875. END_OF_FILE
  876. if test 932 -ne `wc -c <'deletept.c.diff'`; then
  877.     echo shar: \"'deletept.c.diff'\" unpacked with wrong size!
  878. fi
  879. # end of 'deletept.c.diff'
  880. fi
  881. if test -f 'fig.h.diff' -a "${1}" != "-c" ; then 
  882.   echo shar: Will not clobber existing file \"'fig.h.diff'\"
  883. else
  884. echo shar: Extracting \"'fig.h.diff'\" \(307 characters\)
  885. sed "s/^X//" >'fig.h.diff' <<'END_OF_FILE'
  886. X*** fig.h.p5    Fri Mar  2 16:10:16 1990
  887. X--- fig.h    Wed Mar 21 13:46:50 1990
  888. X***************
  889. X*** 19,24 ****
  890. X--- 19,28 ----
  891. X  #include <errno.h>
  892. X  #include <math.h>
  893. X  
  894. X+ #ifdef SYSV
  895. X+ #define u_int uint
  896. X+ #endif
  897. X+ 
  898. X  #ifndef M_PI
  899. X  #define M_PI    3.14159265358979323846
  900. X  #define M_PI_2  1.57079632679489661923
  901. END_OF_FILE
  902. if test 307 -ne `wc -c <'fig.h.diff'`; then
  903.     echo shar: \"'fig.h.diff'\" unpacked with wrong size!
  904. fi
  905. # end of 'fig.h.diff'
  906. fi
  907. if test -f 'file.c.diff' -a "${1}" != "-c" ; then 
  908.   echo shar: Will not clobber existing file \"'file.c.diff'\"
  909. else
  910. echo shar: Extracting \"'file.c.diff'\" \(875 characters\)
  911. sed "s/^X//" >'file.c.diff' <<'END_OF_FILE'
  912. X*** file.c.p5    Tue Jan 16 17:21:06 1990
  913. X--- file.c    Thu Mar 22 15:22:20 1990
  914. X***************
  915. X*** 60,65 ****
  916. X--- 60,66 ----
  917. X      else if (s > 0)
  918. X          read_fail_message(file, s);
  919. X      reset_cursor();
  920. X+     figure_modified = 0;
  921. X      }
  922. X  
  923. X  read_file(file)
  924. X***************
  925. X*** 88,96 ****
  926. X          saved_objects = c;
  927. X          tail(&objects, &object_tails);
  928. X          append_objects(&objects, &saved_objects, &object_tails);
  929. X-         pw_batch_on(canvas_pixwin);
  930. X          redisplay_canvas();
  931. X-         pw_batch_off(canvas_pixwin);
  932. X          put_msg("File \"%s\" %d objects", file, num_object);
  933. X          set_action_object(F_CREATE, O_ALL_OBJECT);
  934. X          }
  935. X--- 89,95 ----
  936. X***************
  937. X*** 113,118 ****
  938. X--- 112,119 ----
  939. X  save_file(file)
  940. X  char    *file;
  941. X  {
  942. X+     if (*current_file=='\0') /* no current file, make this the current one */
  943. X+         strcpy(current_file, file);
  944. X      return(write_file(file, PROMPT));
  945. X      }
  946. X  
  947. END_OF_FILE
  948. if test 875 -ne `wc -c <'file.c.diff'`; then
  949.     echo shar: \"'file.c.diff'\" unpacked with wrong size!
  950. fi
  951. # end of 'file.c.diff'
  952. fi
  953. if test -f 'font.c.diff' -a "${1}" != "-c" ; then 
  954.   echo shar: Will not clobber existing file \"'font.c.diff'\"
  955. else
  956. echo shar: Extracting \"'font.c.diff'\" \(1958 characters\)
  957. sed "s/^X//" >'font.c.diff' <<'END_OF_FILE'
  958. X*** font.c.p5    Tue Feb 20 09:25:26 1990
  959. X--- font.c    Thu Mar 15 12:10:01 1990
  960. X***************
  961. X*** 17,22 ****
  962. X--- 17,23 ----
  963. X  PIX_FONT        button_font;
  964. X  
  965. X  extern    struct _fstruct fontnames[NUMFONTS];
  966. X+ extern    appresStruct    appres;
  967. X  
  968. X  XFontStruct *XLoadQueryFont();
  969. X  #define MAXNAMES 30
  970. X***************
  971. X*** 26,34 ****
  972. X      int s;
  973. X      } flist[MAXNAMES];
  974. X  
  975. X- char    *boldFont = NULL;
  976. X- char    *normalFont = NULL;
  977. X- 
  978. X  init_font()
  979. X      {
  980. X      struct    xfont *newfont, *nf;
  981. X--- 27,32 ----
  982. X***************
  983. X*** 35,57 ****
  984. X      int    f,count,i,p,ss;
  985. X      char    **fontlist,**fname,*np;
  986. X  
  987. X!     if( boldFont == NULL || *boldFont == NULL)
  988. X!         boldFont = BOLD_FONT;
  989. X!     if( normalFont == NULL || *normalFont == NULL)
  990. X!         normalFont = NORMAL_FONT;
  991. X      
  992. X!     roman_font = XLoadQueryFont(tool_d, normalFont);
  993. X!     if ((bold_font = XLoadQueryFont(tool_d, boldFont)) ==0)
  994. X          {
  995. X!         fprintf(stderr,"Can't load font: %s, using %s\n",boldFont,normalFont);
  996. X!         bold_font = XLoadQueryFont(tool_d, normalFont);
  997. X          }
  998. X      button_font = XLoadQueryFont(tool_d, NORMAL_FONT);
  999. X  
  1000. X      for (i=0; i<0x10; i++)
  1001. X          {
  1002. X!         cur_gcfont[i] = -1;
  1003. X!         cur_gcfontsize[i] = 0;
  1004. X          }
  1005. X  
  1006. X      /* Now initialize the font structure for the X fonts corresponding
  1007. X--- 33,56 ----
  1008. X      int    f,count,i,p,ss;
  1009. X      char    **fontlist,**fname,*np;
  1010. X  
  1011. X!     if( appres.boldFont == NULL || *appres.boldFont == NULL)
  1012. X!         appres.boldFont = BOLD_FONT;
  1013. X!     if( appres.normalFont == NULL || *appres.normalFont == NULL)
  1014. X!         appres.normalFont = NORMAL_FONT;
  1015. X      
  1016. X!     roman_font = XLoadQueryFont(tool_d, appres.normalFont);
  1017. X!     if ((bold_font = XLoadQueryFont(tool_d, appres.boldFont)) ==0)
  1018. X          {
  1019. X!         fprintf(stderr,"Can't load font: %s, using %s\n",
  1020. X!             appres.boldFont,appres.normalFont);
  1021. X!         bold_font = XLoadQueryFont(tool_d, appres.normalFont);
  1022. X          }
  1023. X      button_font = XLoadQueryFont(tool_d, NORMAL_FONT);
  1024. X  
  1025. X      for (i=0; i<0x10; i++)
  1026. X          {
  1027. X!         gc_font[i] = -1;
  1028. X!         gc_fontsize[i] = 0;
  1029. X          }
  1030. X  
  1031. X      /* Now initialize the font structure for the X fonts corresponding
  1032. END_OF_FILE
  1033. if test 1958 -ne `wc -c <'font.c.diff'`; then
  1034.     echo shar: \"'font.c.diff'\" unpacked with wrong size!
  1035. fi
  1036. # end of 'font.c.diff'
  1037. fi
  1038. if test -f 'global.c.diff' -a "${1}" != "-c" ; then 
  1039.   echo shar: Will not clobber existing file \"'global.c.diff'\"
  1040. else
  1041. echo shar: Extracting \"'global.c.diff'\" \(2926 characters\)
  1042. sed "s/^X//" >'global.c.diff' <<'END_OF_FILE'
  1043. X*** global.c.p5    Tue Mar 13 10:18:27 1990
  1044. X--- global.c    Fri Mar 16 17:01:18 1990
  1045. X***************
  1046. X*** 43,49 ****
  1047. X  int            SIDERULER_START;
  1048. X  int            TOPRULER_LEFT, TOPRULER_TOP;
  1049. X  int            TOPRULER_WIDTH, TOPRULER_HEIGHT;
  1050. X- int            INCHES;
  1051. X  int            borderwid, windowspacing, toolstripeht;
  1052. X  
  1053. X  int            num_point;
  1054. X--- 43,48 ----
  1055. X***************
  1056. X*** 91,96 ****
  1057. X--- 90,96 ----
  1058. X  int            latexarrow_mode        = 0;
  1059. X  int            magnet_mode        = 0;
  1060. X  int            line_thickness        = 1;
  1061. X+ int            line_style        = SOLID_LINE;
  1062. X  int            cur_radius        = 7;
  1063. X  int            pen_size        = 0;
  1064. X  int            pen_type        = 0;
  1065. X***************
  1066. X*** 97,103 ****
  1067. X  int            flip_axis        = -1;
  1068. X  int            rotate_angle        = 0;
  1069. X  int            fill_mode        = 0;
  1070. X- int            landscape        = 0;
  1071. X  int            print_landscape        = 0;    /* def. orientation for printer */
  1072. X  int            size_button;            /* font size button value */
  1073. X  int            font_button        = 0;    /* font button value */
  1074. X--- 97,102 ----
  1075. X***************
  1076. X*** 105,113 ****
  1077. X  int            cur_font;            /* font of current text object */
  1078. X  int            cur_fontsize;            /* size of current text object font */
  1079. X  int            cur_areafill        = 1;
  1080. X! int            cur_line_style        = -1;
  1081. X! float            cur_dashlength        = .05*PIX_PER_INCH;
  1082. X! float            cur_dotgap        = .04*PIX_PER_INCH;
  1083. X  float            cur_styleval        = 0.0;
  1084. X  float            cur_angle        = 0.0;
  1085. X  int            cur_color        = BLACK;
  1086. X--- 104,111 ----
  1087. X  int            cur_font;            /* font of current text object */
  1088. X  int            cur_fontsize;            /* size of current text object font */
  1089. X  int            cur_areafill        = 1;
  1090. X! float            cur_dashlength        = 4;
  1091. X! float            cur_dotgap        = 3;
  1092. X  float            cur_styleval        = 0.0;
  1093. X  float            cur_angle        = 0.0;
  1094. X  int            cur_color        = BLACK;
  1095. X***************
  1096. X*** 114,122 ****
  1097. X  int            cur_textstyle        = PLAIN;
  1098. X  int            cur_texttype        = T_LEFT_JUSTIFIED;
  1099. X      /* line thicknesses for each gc */
  1100. X! int            cur_thickness[0x10]    = {1,1,1,1,1,1,1,1,    
  1101. X                             1,1,1,1,1,1,1,1};
  1102. X! 
  1103. X  short            dot_image[16] = {
  1104. X                  0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF,
  1105. X                  0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF,
  1106. X--- 112,121 ----
  1107. X  int            cur_textstyle        = PLAIN;
  1108. X  int            cur_texttype        = T_LEFT_JUSTIFIED;
  1109. X      /* line thicknesses for each gc */
  1110. X! int            gc_thickness[0x10]    = {1,1,1,1,1,1,1,1,    
  1111. X                             1,1,1,1,1,1,1,1};
  1112. X! int            gc_line_style[0x10]    = {-1,-1,-1,-1,-1,-1,-1,-1,
  1113. X!                          -1,-1,-1,-1,-1,-1,-1,-1};
  1114. X  short            dot_image[16] = {
  1115. X                  0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF,
  1116. X                  0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF,
  1117. X***************
  1118. X*** 125,137 ****
  1119. X                  };
  1120. X  mpr_static(dot, 16, 16, 1, dot_image);
  1121. X  
  1122. X! /*************************  Flags  *******************************/
  1123. X  
  1124. X  int            cur_command = -1;
  1125. X! int            DEBUG = 0;
  1126. X! int            RHS_PANEL = 0;
  1127. X! int            INVERSE = 0;
  1128. X! int            TRACKING = 1;
  1129. X  
  1130. X  /************************  Status  ****************************/
  1131. X  
  1132. X--- 124,136 ----
  1133. X                  };
  1134. X  mpr_static(dot, 16, 16, 1, dot_image);
  1135. X  
  1136. X! /*************************  Flags/Resources  *******************************/
  1137. X  
  1138. X  int            cur_command = -1;
  1139. X! 
  1140. X! /* Resources */
  1141. X! 
  1142. X! appresStruct appres;
  1143. X  
  1144. X  /************************  Status  ****************************/
  1145. X  
  1146. END_OF_FILE
  1147. if test 2926 -ne `wc -c <'global.c.diff'`; then
  1148.     echo shar: \"'global.c.diff'\" unpacked with wrong size!
  1149. fi
  1150. # end of 'global.c.diff'
  1151. fi
  1152. if test -f 'glue.c.diff' -a "${1}" != "-c" ; then 
  1153.   echo shar: Will not clobber existing file \"'glue.c.diff'\"
  1154. else
  1155. echo shar: Extracting \"'glue.c.diff'\" \(1702 characters\)
  1156. sed "s/^X//" >'glue.c.diff' <<'END_OF_FILE'
  1157. X*** glue.c.p5    Tue Jan 16 17:21:02 1990
  1158. X--- glue.c    Sat Mar 17 13:34:21 1990
  1159. X***************
  1160. X*** 67,73 ****
  1161. X          put_msg(Err_mem);
  1162. X          return;
  1163. X          }
  1164. X!     draw_rectbox(fix_x, fix_y, cur_x, cur_y, INV_PAINT, 1);
  1165. X      c->nwcorner.x = min(fix_x, x);
  1166. X      c->nwcorner.y = min(fix_y, y);
  1167. X      c->secorner.x = max(fix_x, x);
  1168. X--- 67,73 ----
  1169. X          put_msg(Err_mem);
  1170. X          return;
  1171. X          }
  1172. X!     draw_rectbox(fix_x, fix_y, cur_x, cur_y, INV_PAINT);
  1173. X      c->nwcorner.x = min(fix_x, x);
  1174. X      c->nwcorner.y = min(fix_y, y);
  1175. X      c->secorner.x = max(fix_x, x);
  1176. X***************
  1177. X*** 124,134 ****
  1178. X  int        op;
  1179. X  {
  1180. X      draw_rectbox( c->nwcorner.x-1, c->nwcorner.y-1,
  1181. X!         c->secorner.x+1, c->secorner.y+1, op, 1);
  1182. X      draw_rectbox( c->nwcorner.x, c->nwcorner.y,
  1183. X!         c->secorner.x, c->secorner.y, op, 1);
  1184. X      draw_rectbox( c->nwcorner.x+1, c->nwcorner.y+1,
  1185. X!         c->secorner.x-1, c->secorner.y-1, op, 1);
  1186. X      }
  1187. X  
  1188. X  get_ellipse(list, xmin, ymin, xmax, ymax)
  1189. X--- 124,134 ----
  1190. X  int        op;
  1191. X  {
  1192. X      draw_rectbox( c->nwcorner.x-1, c->nwcorner.y-1,
  1193. X!         c->secorner.x+1, c->secorner.y+1, op);
  1194. X      draw_rectbox( c->nwcorner.x, c->nwcorner.y,
  1195. X!         c->secorner.x, c->secorner.y, op);
  1196. X      draw_rectbox( c->nwcorner.x+1, c->nwcorner.y+1,
  1197. X!         c->secorner.x-1, c->secorner.y-1, op);
  1198. X      }
  1199. X  
  1200. X  get_ellipse(list, xmin, ymin, xmax, ymax)
  1201. X***************
  1202. X*** 382,388 ****
  1203. X      F_arc        *a;
  1204. X      F_compound    *c1;
  1205. X      
  1206. X-     pw_batch_on(canvas_pixwin);
  1207. X      for (l = c->lines; l != NULL; l = l->next) {
  1208. X          draw_line(l, lineop);
  1209. X          }
  1210. X--- 382,387 ----
  1211. X***************
  1212. X*** 402,408 ****
  1213. X          draw_compoundbox(c1, INV_PAINT);
  1214. X          compop == ERASE ? erase_compound(c1) : draw_compound(c1);
  1215. X          }
  1216. X-     pw_batch_off(canvas_pixwin);
  1217. X      }
  1218. X  
  1219. X  F_compound *
  1220. X--- 401,406 ----
  1221. END_OF_FILE
  1222. if test 1702 -ne `wc -c <'glue.c.diff'`; then
  1223.     echo shar: \"'glue.c.diff'\" unpacked with wrong size!
  1224. fi
  1225. # end of 'glue.c.diff'
  1226. fi
  1227. if test -f 'graphics.c.diff' -a "${1}" != "-c" ; then 
  1228.   echo shar: Will not clobber existing file \"'graphics.c.diff'\"
  1229. else
  1230. echo shar: Extracting \"'graphics.c.diff'\" \(3193 characters\)
  1231. sed "s/^X//" >'graphics.c.diff' <<'END_OF_FILE'
  1232. X*** graphics.c.p5    Tue Jan 16 17:21:06 1990
  1233. X--- graphics.c    Fri Mar 16 14:20:03 1990
  1234. X***************
  1235. X*** 33,41 ****
  1236. X  #define        THRESHOLD    5
  1237. X  
  1238. X  /* iterative version */
  1239. X! quadratic_spline(a1, b1, a2, b2, a3, b3, a4, b4, op, thick)
  1240. X  float    a1, b1, a2, b2, a3, b3, a4, b4;
  1241. X! int    op, thick;
  1242. X  {
  1243. X      float    x1, y1, x2, y2, x3, y3, x4, y4;
  1244. X      float    xmid, ymid;
  1245. X--- 33,45 ----
  1246. X  #define        THRESHOLD    5
  1247. X  
  1248. X  /* iterative version */
  1249. X! /* because we draw the spline with small line segments, the style
  1250. X!    parameter doesn't work */
  1251. X! 
  1252. X! quadratic_spline(a1, b1, a2, b2, a3, b3, a4, b4, op, thick, style, style_val)
  1253. X  float    a1, b1, a2, b2, a3, b3, a4, b4;
  1254. X! int    op, thick, style;
  1255. X! float    style_val;
  1256. X  {
  1257. X      float    x1, y1, x2, y2, x3, y3, x4, y4;
  1258. X      float    xmid, ymid;
  1259. X***************
  1260. X*** 48,54 ****
  1261. X          ymid = half(y2, y3);
  1262. X          if (fabs(x1 - xmid) < THRESHOLD && fabs(y1 - ymid) < THRESHOLD) {
  1263. X          pw_vector(canvas_pixwin, round(x1), round(y1), 
  1264. X!             round(xmid), round(ymid), op, thick);
  1265. X          }
  1266. X          else {
  1267. X          push(x1, y1, half(x1, x2), half(y1, y2),
  1268. X--- 52,58 ----
  1269. X          ymid = half(y2, y3);
  1270. X          if (fabs(x1 - xmid) < THRESHOLD && fabs(y1 - ymid) < THRESHOLD) {
  1271. X          pw_vector(canvas_pixwin, round(x1), round(y1), 
  1272. X!             round(xmid), round(ymid), op, thick, style, style_val);
  1273. X          }
  1274. X          else {
  1275. X          push(x1, y1, half(x1, x2), half(y1, y2),
  1276. X***************
  1277. X*** 57,63 ****
  1278. X  
  1279. X          if (fabs(xmid - x4) < THRESHOLD && fabs(ymid - y4) < THRESHOLD) {
  1280. X          pw_vector(canvas_pixwin, round(xmid), round(ymid), 
  1281. X!             round(x4), round(y4), op, thick);
  1282. X          }
  1283. X          else {
  1284. X          push(xmid, ymid, half(xmid, x3), half(ymid, y3),
  1285. X--- 61,67 ----
  1286. X  
  1287. X          if (fabs(xmid - x4) < THRESHOLD && fabs(ymid - y4) < THRESHOLD) {
  1288. X          pw_vector(canvas_pixwin, round(xmid), round(ymid), 
  1289. X!             round(x4), round(y4), op, thick, style, style_val);
  1290. X          }
  1291. X          else {
  1292. X          push(xmid, ymid, half(xmid, x3), half(ymid, y3),
  1293. X***************
  1294. X*** 66,74 ****
  1295. X          }
  1296. X      }
  1297. X  
  1298. X! bezier_spline(a0, b0, a1, b1, a2, b2, a3, b3, op, thick)
  1299. X  float    a0, b0, a1, b1, a2, b2, a3, b3;
  1300. X! int    op, thick;
  1301. X  {
  1302. X      float    x0, y0, x1, y1, x2, y2, x3, y3;
  1303. X      float    sx1, sy1, sx2, sy2, tx, ty, tx1, ty1, tx2, ty2, xmid, ymid;
  1304. X--- 70,82 ----
  1305. X          }
  1306. X      }
  1307. X  
  1308. X! /* because we draw the spline with small line segments, the style
  1309. X!    parameter doesn't work */
  1310. X! 
  1311. X! bezier_spline(a0, b0, a1, b1, a2, b2, a3, b3, op, thick, style, style_val)
  1312. X  float    a0, b0, a1, b1, a2, b2, a3, b3;
  1313. X! int    op, thick, style;
  1314. X! float    style_val;
  1315. X  {
  1316. X      float    x0, y0, x1, y1, x2, y2, x3, y3;
  1317. X      float    sx1, sy1, sx2, sy2, tx, ty, tx1, ty1, tx2, ty2, xmid, ymid;
  1318. X***************
  1319. X*** 79,85 ****
  1320. X      while(pop(&x0, &y0, &x1, &y1, &x2, &y2, &x3, &y3)) {
  1321. X          if (fabs(x0 - x3) < THRESHOLD && fabs(y0 - y3) < THRESHOLD) {
  1322. X          pw_vector(canvas_pixwin, round(x0), round(y0), 
  1323. X!             round(x3), round(y3), op, thick);
  1324. X          }
  1325. X          else {
  1326. X          tx = half(x1, x2);    ty = half(y1, y2);
  1327. X--- 87,93 ----
  1328. X      while(pop(&x0, &y0, &x1, &y1, &x2, &y2, &x3, &y3)) {
  1329. X          if (fabs(x0 - x3) < THRESHOLD && fabs(y0 - y3) < THRESHOLD) {
  1330. X          pw_vector(canvas_pixwin, round(x0), round(y0), 
  1331. X!             round(x3), round(y3), op, thick, style, style_val);
  1332. X          }
  1333. X          else {
  1334. X          tx = half(x1, x2);    ty = half(y1, y2);
  1335. END_OF_FILE
  1336. if test 3193 -ne `wc -c <'graphics.c.diff'`; then
  1337.     echo shar: \"'graphics.c.diff'\" unpacked with wrong size!
  1338. fi
  1339. # end of 'graphics.c.diff'
  1340. fi
  1341. if test -f 'grid.c.diff' -a "${1}" != "-c" ; then 
  1342.   echo shar: Will not clobber existing file \"'grid.c.diff'\"
  1343. else
  1344. echo shar: Extracting \"'grid.c.diff'\" \(793 characters\)
  1345. sed "s/^X//" >'grid.c.diff' <<'END_OF_FILE'
  1346. X*** grid.c.p5    Tue Jan 16 17:21:02 1990
  1347. X--- grid.c    Tue Mar 13 14:44:47 1990
  1348. X***************
  1349. X*** 15,21 ****
  1350. X  
  1351. X  static int    cur_grid = -1;
  1352. X  extern int    CANVAS_WIDTH, CANVAS_HEIGHT;
  1353. X! extern int    INCHES;
  1354. X  
  1355. X  #define null_width 32
  1356. X  #define null_height 32
  1357. X--- 15,21 ----
  1358. X  
  1359. X  static int    cur_grid = -1;
  1360. X  extern int    CANVAS_WIDTH, CANVAS_HEIGHT;
  1361. X! extern appresStruct    appres;
  1362. X  
  1363. X  #define null_width 32
  1364. X  #define null_height 32
  1365. X***************
  1366. X*** 98,104 ****
  1367. X          grid_args[0].value = (XtArgVal)null_pm;
  1368. X          grid = -1;
  1369. X      }
  1370. X!     if( INCHES )
  1371. X      {
  1372. X          if (grid == F_GRID1)
  1373. X              grid_args[0].value = (XtArgVal)quarter_pm;
  1374. X--- 98,104 ----
  1375. X          grid_args[0].value = (XtArgVal)null_pm;
  1376. X          grid = -1;
  1377. X      }
  1378. X!     if( appres.INCHES )
  1379. X      {
  1380. X          if (grid == F_GRID1)
  1381. X              grid_args[0].value = (XtArgVal)quarter_pm;
  1382. END_OF_FILE
  1383. if test 793 -ne `wc -c <'grid.c.diff'`; then
  1384.     echo shar: \"'grid.c.diff'\" unpacked with wrong size!
  1385. fi
  1386. # end of 'grid.c.diff'
  1387. fi
  1388. if test -f 'move.c.diff' -a "${1}" != "-c" ; then 
  1389.   echo shar: Will not clobber existing file \"'move.c.diff'\"
  1390. else
  1391. echo shar: Extracting \"'move.c.diff'\" \(1182 characters\)
  1392. sed "s/^X//" >'move.c.diff' <<'END_OF_FILE'
  1393. X*** move.c.p5    Tue Jan 16 17:21:07 1990
  1394. X--- move.c    Sat Mar 17 13:34:46 1990
  1395. X***************
  1396. X*** 110,118 ****
  1397. X          erase_pointmarker();
  1398. X          set_temp_cursor(&null_cursor);
  1399. X          win_setmouseposition(canvas_swfd, px, py);
  1400. X-         pw_batch_on(canvas_pixwin);
  1401. X          draw_ellipse(e, background_color);
  1402. X-         pw_batch_off(canvas_pixwin);
  1403. X          init_ellipsedragging(e, px, py);
  1404. X          set_temp_cursor(&null_cursor);
  1405. X          clean_up();
  1406. X--- 110,116 ----
  1407. X***************
  1408. X*** 123,131 ****
  1409. X          set_temp_cursor(&wait_cursor);
  1410. X          erase_pointmarker();
  1411. X          win_setmouseposition(canvas_swfd, px, py);
  1412. X-         pw_batch_on(canvas_pixwin);
  1413. X          draw_arc(a, background_color);
  1414. X-         pw_batch_off(canvas_pixwin);
  1415. X          init_arcdragging(a, px, py);
  1416. X          set_temp_cursor(&null_cursor);
  1417. X          clean_up();
  1418. X--- 121,127 ----
  1419. X***************
  1420. X*** 136,144 ****
  1421. X          set_temp_cursor(&wait_cursor);
  1422. X          win_setmouseposition(canvas_swfd, px, py);
  1423. X          erase_pointmarker();
  1424. X-         pw_batch_on(canvas_pixwin);
  1425. X          draw_spline(s, ERASE);
  1426. X-         pw_batch_off(canvas_pixwin);
  1427. X          init_splinedragging(s, px, py);
  1428. X          set_temp_cursor(&null_cursor);
  1429. X          clean_up();
  1430. X--- 132,138 ----
  1431. END_OF_FILE
  1432. if test 1182 -ne `wc -c <'move.c.diff'`; then
  1433.     echo shar: \"'move.c.diff'\" unpacked with wrong size!
  1434. fi
  1435. # end of 'move.c.diff'
  1436. fi
  1437. if test -f 'msgsw.c.diff' -a "${1}" != "-c" ; then 
  1438.   echo shar: Will not clobber existing file \"'msgsw.c.diff'\"
  1439. else
  1440. echo shar: Extracting \"'msgsw.c.diff'\" \(3184 characters\)
  1441. sed "s/^X//" >'msgsw.c.diff' <<'END_OF_FILE'
  1442. X*** msgsw.c.p5    Wed Mar  7 10:01:07 1990
  1443. X--- msgsw.c    Tue Mar 20 17:33:47 1990
  1444. X***************
  1445. X*** 64,88 ****
  1446. X  
  1447. X  static Arg      msg_args[] =
  1448. X  {
  1449. X!     /* 0 */ { XtNx, (XtArgVal)0 },
  1450. X!     /* 1 */ { XtNy, (XtArgVal)0 },
  1451. X!     /* 2 */ { XtNwidth, (XtArgVal)0 },
  1452. X!     /* 3 */ { XtNheight, (XtArgVal)MSG_HEIGHT },
  1453. X!     /* 4 */ { XtNlabel, (XtArgVal)"" },
  1454. X!     /* 5 */ { XtNfromHoriz, (XtArgVal)NULL },
  1455. X!     /* 6 */ { XtNhorizDistance, (XtArgVal) 2 },
  1456. X!     /* 7 */ { XtNfromVert, (XtArgVal)NULL },
  1457. X!     /* 8 */ { XtNvertDistance, (XtArgVal) 1 },
  1458. X!     /* 9 */ { XtNleft, (XtArgVal) XtChainLeft },
  1459. X!     /*10 */ { XtNinput, (XtArgVal) TRUE },    /* doesn't seem to work for DECwindows */
  1460. X  };
  1461. X  
  1462. X  int init_msg(tool)
  1463. X      TOOL        tool;
  1464. X  {
  1465. X!     msg_args[2].value = PANEL_WID+CANVAS_WIDTH+SIDERULER_WIDTH-FONT_PANE_WIDTH;
  1466. X!     msg_args[5].value = (XtArgVal)psfont;      /* to the right of font ind. */
  1467. X!     msg_args[7].value = (XtArgVal)canvas_sw;  /* just below the canvas */
  1468. X      msg_sw = XtCreateManagedWidget("message", commandWidgetClass, tool,
  1469. X          msg_args, XtNumber(msg_args));
  1470. X      return (1);
  1471. X--- 64,88 ----
  1472. X  
  1473. X  static Arg      msg_args[] =
  1474. X  {
  1475. X!     /* 0 */ { XtNwidth, (XtArgVal) 0 },
  1476. X!     /* 1 */ { XtNheight, (XtArgVal)MSG_HEIGHT },
  1477. X!     /* 2 */ { XtNlabel, (XtArgVal)"" },
  1478. X!     /* 3 */ { XtNfromHoriz, (XtArgVal)NULL },
  1479. X!     /* 4 */ { XtNhorizDistance, (XtArgVal) 2 },
  1480. X!     /* 5 */ { XtNfromVert, (XtArgVal)NULL },
  1481. X!     /* 6 */ { XtNvertDistance, (XtArgVal) -1 },
  1482. X!     /* 7 */ { XtNleft, (XtArgVal) XtChainLeft },
  1483. X!     /* 8 */ { XtNinput, (XtArgVal) True },
  1484. X  };
  1485. X  
  1486. X  int init_msg(tool)
  1487. X      TOOL        tool;
  1488. X  {
  1489. X!     /* width */
  1490. X!     msg_args[0].value = PANEL_WID+CANVAS_WIDTH+SIDERULER_WIDTH -
  1491. X!                 FONT_PANE_WIDTH;
  1492. X!     msg_args[3].value = (XtArgVal)psfont;      /* to the right of font ind. */
  1493. X!     msg_args[5].value = (XtArgVal)canvas_sw;  /* just below the canvas */
  1494. X      msg_sw = XtCreateManagedWidget("message", commandWidgetClass, tool,
  1495. X          msg_args, XtNumber(msg_args));
  1496. X      return (1);
  1497. X***************
  1498. X*** 114,121 ****
  1499. X      int    arg1, arg2, arg3, arg4, arg5;
  1500. X  {
  1501. X      sprintf(prompt, format, arg1, arg2, arg3, arg4, arg5);
  1502. X!     msg_args[4].value = (XtArgVal)prompt;
  1503. X!     XtSetValues(msg_sw, &msg_args[4], 1);
  1504. X  }
  1505. X  
  1506. X  /* floating point version - MIPS (DEC3100) doesn't like ints where floats are used */
  1507. X--- 114,121 ----
  1508. X      int    arg1, arg2, arg3, arg4, arg5;
  1509. X  {
  1510. X      sprintf(prompt, format, arg1, arg2, arg3, arg4, arg5);
  1511. X!     msg_args[2].value = (XtArgVal)prompt;
  1512. X!     XtSetValues(msg_sw, &msg_args[2], 1);
  1513. X  }
  1514. X  
  1515. X  /* floating point version - MIPS (DEC3100) doesn't like ints where floats are used */
  1516. X***************
  1517. X*** 126,139 ****
  1518. X      float    arg1, arg2, arg3, arg4, arg5;
  1519. X  {
  1520. X      sprintf(prompt, format, arg1, arg2, arg3, arg4, arg5);
  1521. X!     msg_args[4].value = (XtArgVal)prompt;
  1522. X!     XtSetValues(msg_sw, &msg_args[4], 1);
  1523. X  }
  1524. X  
  1525. X  clear_message()
  1526. X  {
  1527. X!     msg_args[4].value = (XtArgVal)"";
  1528. X!     XtSetValues(msg_sw, &msg_args[4], 1);
  1529. X  }
  1530. X  
  1531. X  static
  1532. X--- 126,139 ----
  1533. X      float    arg1, arg2, arg3, arg4, arg5;
  1534. X  {
  1535. X      sprintf(prompt, format, arg1, arg2, arg3, arg4, arg5);
  1536. X!     msg_args[2].value = (XtArgVal)prompt;
  1537. X!     XtSetValues(msg_sw, &msg_args[2], 1);
  1538. X  }
  1539. X  
  1540. X  clear_message()
  1541. X  {
  1542. X!     msg_args[2].value = (XtArgVal)"";
  1543. X!     XtSetValues(msg_sw, &msg_args[2], 1);
  1544. X  }
  1545. X  
  1546. X  static
  1547. END_OF_FILE
  1548. if test 3184 -ne `wc -c <'msgsw.c.diff'`; then
  1549.     echo shar: \"'msgsw.c.diff'\" unpacked with wrong size!
  1550. fi
  1551. # end of 'msgsw.c.diff'
  1552. fi
  1553. if test -f 'patchlevel.h.diff' -a "${1}" != "-c" ; then 
  1554.   echo shar: Will not clobber existing file \"'patchlevel.h.diff'\"
  1555. else
  1556. echo shar: Extracting \"'patchlevel.h.diff'\" \(171 characters\)
  1557. sed "s/^X//" >'patchlevel.h.diff' <<'END_OF_FILE'
  1558. X*** patchlevel.h.p5    Thu Mar  1 13:18:06 1990
  1559. X--- patchlevel.h    Tue Mar 13 17:06:14 1990
  1560. X***************
  1561. X*** 1 ****
  1562. X! #define PATCHLEVEL 4
  1563. X--- 1 ----
  1564. X! #define PATCHLEVEL 5
  1565. END_OF_FILE
  1566. if test 171 -ne `wc -c <'patchlevel.h.diff'`; then
  1567.     echo shar: \"'patchlevel.h.diff'\" unpacked with wrong size!
  1568. fi
  1569. # end of 'patchlevel.h.diff'
  1570. fi
  1571. if test -f 'popup.c.diff' -a "${1}" != "-c" ; then 
  1572.   echo shar: Will not clobber existing file \"'popup.c.diff'\"
  1573. else
  1574. echo shar: Extracting \"'popup.c.diff'\" \(3248 characters\)
  1575. sed "s/^X//" >'popup.c.diff' <<'END_OF_FILE'
  1576. X*** popup.c.p5    Fri Mar  9 13:50:30 1990
  1577. X--- popup.c    Wed Mar 21 11:47:27 1990
  1578. X***************
  1579. X*** 59,70 ****
  1580. X  static char quit_msg[] = "CONFIRM with LEFT button, CANCEL with RIGHT or MIDDLE button";
  1581. X  static char edit_msg[] = "Figures are modified; please CONFIRM with LEFT button or CANCEL with RIGHT button";
  1582. X  
  1583. X  static Arg    menu_args[] =
  1584. X  {
  1585. X!     { XtNx, (XtArgVal)0 },
  1586. X!     { XtNy, (XtArgVal)0 },
  1587. X!     { XtNwidth, (XtArgVal)0 },
  1588. X!     { XtNheight, (XtArgVal)0 },
  1589. X  };
  1590. X  
  1591. X  extern void pane_select();
  1592. X--- 59,69 ----
  1593. X  static char quit_msg[] = "CONFIRM with LEFT button, CANCEL with RIGHT or MIDDLE button";
  1594. X  static char edit_msg[] = "Figures are modified; please CONFIRM with LEFT button or CANCEL with RIGHT button";
  1595. X  
  1596. X+ /* currently, no arguments are needed for the menu widget */
  1597. X+ 
  1598. X  static Arg    menu_args[] =
  1599. X  {
  1600. X!         { XtNwidth, (XtArgVal)0 },
  1601. X  };
  1602. X  
  1603. X  extern void pane_select();
  1604. X***************
  1605. X*** 77,87 ****
  1606. X  
  1607. X  static Arg      pane_args[] =
  1608. X  {
  1609. X-         { XtNx, (XtArgVal)10 },
  1610. X-         { XtNy, (XtArgVal)30 },
  1611. X          { XtNlabel, (XtArgVal)"        " },
  1612. X          { XtNwidth, (XtArgVal)0 },
  1613. X-         { XtNheight, (XtArgVal)0 },
  1614. X          { XtNcallback, (XtArgVal)pane_callbacks },
  1615. X  };
  1616. X  
  1617. X--- 76,83 ----
  1618. X***************
  1619. X*** 119,131 ****
  1620. X              rlen = tlen;
  1621. X      }
  1622. X      
  1623. X!     pane_args[2].value = (XtArgVal)"COMMANDS";
  1624. X      title = XtCreateManagedWidget("title", labelWidgetClass,
  1625. X!                    panes, pane_args, 4);
  1626. X  
  1627. X      /* create the first pane */
  1628. X      mi = &pumenu_items[0];
  1629. X!     pane_args[2].value = (XtArgVal)mi->label;
  1630. X      pane_callbacks[0].closure = (caddr_t)mi;
  1631. X      pane = XtCreateManagedWidget("pane", commandWidgetClass,
  1632. X                       panes, pane_args, XtNumber(pane_args));
  1633. X--- 115,127 ----
  1634. X              rlen = tlen;
  1635. X      }
  1636. X      
  1637. X!     pane_args[0].value = (XtArgVal)"COMMANDS";
  1638. X      title = XtCreateManagedWidget("title", labelWidgetClass,
  1639. X!                    panes, pane_args, XtNumber(pane_args));
  1640. X  
  1641. X      /* create the first pane */
  1642. X      mi = &pumenu_items[0];
  1643. X!     pane_args[0].value = (XtArgVal)mi->label;
  1644. X      pane_callbacks[0].closure = (caddr_t)mi;
  1645. X      pane = XtCreateManagedWidget("pane", commandWidgetClass,
  1646. X                       panes, pane_args, XtNumber(pane_args));
  1647. X***************
  1648. X*** 137,150 ****
  1649. X      XtGetValues(pane, &my_list, 1);
  1650. X  
  1651. X      /* set the width of this pane and the title to the correct width */
  1652. X!     pane_args[3].value = char_width(temp_font) * rlen + 10;
  1653. X!     XtSetValues(title, &pane_args[3], 1);
  1654. X!     XtSetValues(pane, &pane_args[3], 1);
  1655. X      
  1656. X      for (i = 1; i < XtNumber(pumenu_items); ++i)
  1657. X      {
  1658. X          mi = &pumenu_items[i];
  1659. X!         pane_args[2].value = (XtArgVal)mi->label;
  1660. X          pane_callbacks[0].closure = (caddr_t)mi;
  1661. X          pane = XtCreateManagedWidget("pane", commandWidgetClass,
  1662. X              panes, pane_args, XtNumber(pane_args));
  1663. X--- 133,146 ----
  1664. X      XtGetValues(pane, &my_list, 1);
  1665. X  
  1666. X      /* set the width of this pane and the title to the correct width */
  1667. X!     pane_args[1].value = char_width(temp_font) * rlen + 10;
  1668. X!     XtSetValues(title, &pane_args[1], 1);
  1669. X!     XtSetValues(pane, &pane_args[1], 1);
  1670. X      
  1671. X      for (i = 1; i < XtNumber(pumenu_items); ++i)
  1672. X      {
  1673. X          mi = &pumenu_items[i];
  1674. X!         pane_args[0].value = (XtArgVal)mi->label;
  1675. X          pane_callbacks[0].closure = (caddr_t)mi;
  1676. X          pane = XtCreateManagedWidget("pane", commandWidgetClass,
  1677. X              panes, pane_args, XtNumber(pane_args));
  1678. END_OF_FILE
  1679. if test 3248 -ne `wc -c <'popup.c.diff'`; then
  1680.     echo shar: \"'popup.c.diff'\" unpacked with wrong size!
  1681. fi
  1682. # end of 'popup.c.diff'
  1683. fi
  1684. if test -f 'read1_3.c.diff' -a "${1}" != "-c" ; then 
  1685.   echo shar: Will not clobber existing file \"'read1_3.c.diff'\"
  1686. else
  1687. echo shar: Extracting \"'read1_3.c.diff'\" \(329 characters\)
  1688. sed "s/^X//" >'read1_3.c.diff' <<'END_OF_FILE'
  1689. X*** read1_3.c.p5    Thu Mar  1 19:48:50 1990
  1690. X--- read1_3.c    Thu Mar 22 15:11:10 1990
  1691. X***************
  1692. X*** 30,36 ****
  1693. X  #define            DRAW_COMPOUND        13
  1694. X  
  1695. X  extern F_arrow        *forward_arrow(), *backward_arrow();
  1696. X- extern int        figure_modified;
  1697. X  extern int        errno;
  1698. X  extern char        *sys_errlist[];
  1699. X  extern int        sys_nerr, errno;
  1700. X--- 30,35 ----
  1701. END_OF_FILE
  1702. if test 329 -ne `wc -c <'read1_3.c.diff'`; then
  1703.     echo shar: \"'read1_3.c.diff'\" unpacked with wrong size!
  1704. fi
  1705. # end of 'read1_3.c.diff'
  1706. fi
  1707. if test -f 'redisplay.c.diff' -a "${1}" != "-c" ; then 
  1708.   echo shar: Will not clobber existing file \"'redisplay.c.diff'\"
  1709. else
  1710. echo shar: Extracting \"'redisplay.c.diff'\" \(331 characters\)
  1711. sed "s/^X//" >'redisplay.c.diff' <<'END_OF_FILE'
  1712. X*** redisplay.c.p5    Tue Jan 16 17:21:08 1990
  1713. X--- redisplay.c    Sat Mar 17 13:35:00 1990
  1714. X***************
  1715. X*** 123,131 ****
  1716. X  
  1717. X      clear_canvas();
  1718. X      set_temp_cursor(&wait_cursor);
  1719. X-     pw_batch_on(canvas_pixwin);
  1720. X      redisplay_objects(&objects);
  1721. X      redisplay_grid();
  1722. X-     pw_batch_off(canvas_pixwin);
  1723. X      reset_cursor();
  1724. X      }
  1725. X--- 123,129 ----
  1726. END_OF_FILE
  1727. if test 331 -ne `wc -c <'redisplay.c.diff'`; then
  1728.     echo shar: \"'redisplay.c.diff'\" unpacked with wrong size!
  1729. fi
  1730. # end of 'redisplay.c.diff'
  1731. fi
  1732. if test -f 'remove.c.diff' -a "${1}" != "-c" ; then 
  1733.   echo shar: Will not clobber existing file \"'remove.c.diff'\"
  1734. else
  1735. echo shar: Extracting \"'remove.c.diff'\" \(1220 characters\)
  1736. sed "s/^X//" >'remove.c.diff' <<'END_OF_FILE'
  1737. X*** remove.c.p5    Tue Jan 16 17:21:08 1990
  1738. X--- remove.c    Sat Mar 17 13:35:17 1990
  1739. X***************
  1740. X*** 84,92 ****
  1741. X          }
  1742. X      else if ((e = ellipse_search(x, y, TOLERANCE, &dummy, &dummy)) != NULL){
  1743. X          toggle_ellipsepointmarker(e);
  1744. X-         pw_batch_on(canvas_pixwin);
  1745. X          draw_ellipse(e, background_color);
  1746. X-         pw_batch_off(canvas_pixwin);
  1747. X          delete_ellipse(&objects.ellipses, e);
  1748. X          clean_up();
  1749. X          set_action_object(F_REMOVE, O_ELLIPSE);
  1750. X--- 84,90 ----
  1751. X***************
  1752. X*** 95,103 ****
  1753. X          }
  1754. X      else if ((a = arc_search(x, y, TOLERANCE, &dummy, &dummy)) != NULL){
  1755. X          toggle_arcpointmarker(a);
  1756. X-         pw_batch_on(canvas_pixwin);
  1757. X          draw_arc(a, background_color);
  1758. X-         pw_batch_off(canvas_pixwin);
  1759. X          delete_arc(&objects.arcs, a);
  1760. X          clean_up();
  1761. X          set_action_object(F_REMOVE, O_ARC);
  1762. X--- 93,99 ----
  1763. X***************
  1764. X*** 106,114 ****
  1765. X          }
  1766. X      else if ((s = spline_search(x, y, TOLERANCE, &dummy, &dummy)) != NULL) {
  1767. X          toggle_splinepointmarker(s);
  1768. X-         pw_batch_on(canvas_pixwin);
  1769. X          draw_spline(s, ERASE);
  1770. X-         pw_batch_off(canvas_pixwin);
  1771. X          delete_spline(&objects.splines, s);
  1772. X          clean_up();
  1773. X          set_action_object(F_REMOVE, O_SPLINE);
  1774. X--- 102,108 ----
  1775. END_OF_FILE
  1776. if test 1220 -ne `wc -c <'remove.c.diff'`; then
  1777.     echo shar: \"'remove.c.diff'\" unpacked with wrong size!
  1778. fi
  1779. # end of 'remove.c.diff'
  1780. fi
  1781. if test -f 'resources.h.diff' -a "${1}" != "-c" ; then 
  1782.   echo shar: Will not clobber existing file \"'resources.h.diff'\"
  1783. else
  1784. echo shar: Extracting \"'resources.h.diff'\" \(1622 characters\)
  1785. sed "s/^X//" >'resources.h.diff' <<'END_OF_FILE'
  1786. X*** resources.h.p5    Mon Mar 12 11:18:31 1990
  1787. X--- resources.h    Fri Mar 16 15:50:25 1990
  1788. X***************
  1789. X*** 40,45 ****
  1790. X--- 40,60 ----
  1791. X  NULL         /* object data pointer for extension */ \
  1792. X  }
  1793. X  
  1794. X+ /* resources structure */
  1795. X+ 
  1796. X+ typedef struct _appres {
  1797. X+     Boolean        INCHES;
  1798. X+     Boolean        DEBUG;
  1799. X+     Boolean        RHS_PANEL;
  1800. X+     Boolean        INVERSE;
  1801. X+     Boolean        TRACKING;
  1802. X+     Boolean        landscape;
  1803. X+     char        *normalFont;
  1804. X+     char        *boldFont;
  1805. X+     float        tmp_width;
  1806. X+     float        tmp_height;
  1807. X+ } appresStruct, *appresPtr;
  1808. X+ 
  1809. X  typedef struct
  1810. X  {
  1811. X      int        x, y;
  1812. X***************
  1813. X*** 96,102 ****
  1814. X  typedef        MenuRec            MENU;
  1815. X  
  1816. X  #define    set_marker(win,x,y,w,h,op,pix,z1,z2) \
  1817. X!     set_line_width(1,(op)); \
  1818. X      XDrawRectangle(tool_d,(win),gccache[(op)],(x),(y),(w),(h))
  1819. X  
  1820. X  EXTERN PIXWIN        canvas_pixwin,
  1821. X--- 111,117 ----
  1822. X  typedef        MenuRec            MENU;
  1823. X  
  1824. X  #define    set_marker(win,x,y,w,h,op,pix,z1,z2) \
  1825. X!     set_line_stuff(1,SOLID_LINE,0.0,(op)); \
  1826. X      XDrawRectangle(tool_d,(win),gccache[(op)],(x),(y),(w),(h))
  1827. X  
  1828. X  EXTERN PIXWIN        canvas_pixwin,
  1829. X***************
  1830. X*** 149,155 ****
  1831. X  #define NUMFILLPATS 5
  1832. X  #endif
  1833. X  
  1834. X! EXTERN int        cur_gcfont[0x10],cur_gcfontsize[0x10];  /* font/size currently in each GC */
  1835. X  EXTERN GC        gc, bold_gc, gccache[0x10], topgc, sidegc,
  1836. X              fill_gc[NUMFILLPATS],        /* area fill gc's */
  1837. X              un_fill_gc[NUMFILLPATS];    /* area "un"-fill gc's */
  1838. X--- 164,170 ----
  1839. X  #define NUMFILLPATS 5
  1840. X  #endif
  1841. X  
  1842. X! EXTERN int        gc_font[0x10],gc_fontsize[0x10];  /* font/size currently in each GC */
  1843. X  EXTERN GC        gc, bold_gc, gccache[0x10], topgc, sidegc,
  1844. X              fill_gc[NUMFILLPATS],        /* area fill gc's */
  1845. X              un_fill_gc[NUMFILLPATS];    /* area "un"-fill gc's */
  1846. END_OF_FILE
  1847. if test 1622 -ne `wc -c <'resources.h.diff'`; then
  1848.     echo shar: \"'resources.h.diff'\" unpacked with wrong size!
  1849. fi
  1850. # end of 'resources.h.diff'
  1851. fi
  1852. if test -f 'troff_fonts.c.diff' -a "${1}" != "-c" ; then 
  1853.   echo shar: Will not clobber existing file \"'troff_fonts.c.diff'\"
  1854. else
  1855. echo shar: Extracting \"'troff_fonts.c.diff'\" \(1794 characters\)
  1856. sed "s/^X//" >'troff_fonts.c.diff' <<'END_OF_FILE'
  1857. X*** /dev/null    Tue Mar 27 16:38:25 1990
  1858. X--- troff_fonts.c    Tue Mar 27 16:05:00 1990
  1859. X***************
  1860. X*** 0 ****
  1861. X--- 1,75 ----
  1862. X+ /*
  1863. X+ **    troff_fonts.c
  1864. X+ **
  1865. X+ **    read a table of troff font code definitions related to laserwriter
  1866. X+ **    font names as used in psfonts.c
  1867. X+ */
  1868. X+ 
  1869. X+ #define        FONTFILE    "troff_ft_codes"
  1870. X+ #define     FONTLIBDIR    "/usr/lib/X11/troff"
  1871. X+ 
  1872. X+ #include    <stdio.h>
  1873. X+ #include    "troff_fonts.h"
  1874. X+ 
  1875. X+ troff_init()
  1876. X+ {
  1877. X+     FILE    *fp,
  1878. X+         *fopen();
  1879. X+     char    fname[128],
  1880. X+         line[128],
  1881. X+         *p,
  1882. X+         *strchr(),
  1883. X+         *strcpy(),
  1884. X+         *strncpy(),
  1885. X+         *strcat(),
  1886. X+         *malloc();
  1887. X+     int    linecount = 0,
  1888. X+         fontcount = 0;
  1889. X+ 
  1890. X+     if(!font_file)
  1891. X+         font_file = FONTFILE;
  1892. X+     if((fp = fopen(font_file, "r")) == NULL)
  1893. X+     {
  1894. X+         (void) sprintf(fname, "%s/%s", FONTLIBDIR, font_file);
  1895. X+         if((fp = fopen(fname, "r")) == NULL)
  1896. X+         {
  1897. X+             fprintf(stderr,"f2p: cannot open %s\n", fname);
  1898. X+             exit(1);
  1899. X+         }
  1900. X+     }
  1901. X+     while(fgets(line, sizeof line, fp) != NULL)
  1902. X+     {
  1903. X+         linecount++;
  1904. X+         if(line[0] == '#' || line[0] == '\n')
  1905. X+             continue;
  1906. X+         if(fontcount + 1 == MAX_TROFF_FONTS)
  1907. X+         {
  1908. X+             fprintf(stderr,"f2p: too many fonts in %s\n",fname);
  1909. X+             exit(1);
  1910. X+         }
  1911. X+         if((p = strchr(line, '\t')) == NULL)
  1912. X+         {
  1913. X+             fprintf(stderr,"f2p: %s lacks tab char in line %d\n",
  1914. X+                 fname, linecount);
  1915. X+             exit(1);
  1916. X+         }
  1917. X+         *p = '\0';
  1918. X+         if(strlen(line) > 2)
  1919. X+         {
  1920. X+             fprintf(stderr,
  1921. X+                 "f2p: code \"%s\" too long in %s line %d\n",
  1922. X+                     line, fname, linecount);
  1923. X+             exit(1);
  1924. X+         }
  1925. X+         (void) strcpy(troff_fonts[fontcount].trname,line);
  1926. X+         if((troff_fonts[fontcount].lwname=malloc((unsigned)strlen(++p)))
  1927. X+                 == NULL)
  1928. X+         {
  1929. X+             fprintf(stderr,"f2p: malloc failed\n");
  1930. X+             exit(1);
  1931. X+         }
  1932. X+         (void) strncpy(troff_fonts[fontcount++].lwname,p,strlen(p)-1);
  1933. X+                                 /* not '\n' */
  1934. X+     }
  1935. X+     (void) fclose(fp);
  1936. X+ }
  1937. END_OF_FILE
  1938. if test 1794 -ne `wc -c <'troff_fonts.c.diff'`; then
  1939.     echo shar: \"'troff_fonts.c.diff'\" unpacked with wrong size!
  1940. fi
  1941. # end of 'troff_fonts.c.diff'
  1942. fi
  1943. if test -f 'troff_fonts.h.diff' -a "${1}" != "-c" ; then 
  1944.   echo shar: Will not clobber existing file \"'troff_fonts.h.diff'\"
  1945. else
  1946. echo shar: Extracting \"'troff_fonts.h.diff'\" \(276 characters\)
  1947. sed "s/^X//" >'troff_fonts.h.diff' <<'END_OF_FILE'
  1948. X*** /dev/null    Tue Mar 27 16:38:25 1990
  1949. X--- troff_fonts.h    Tue Mar 27 16:09:06 1990
  1950. X***************
  1951. X*** 0 ****
  1952. X--- 1,10 ----
  1953. X+ #define MAX_TROFF_FONTS    50
  1954. X+ 
  1955. X+ char    *font_file;
  1956. X+ 
  1957. X+ struct    lw_troff_map
  1958. X+ {
  1959. X+     char    trname[3];
  1960. X+     char    *lwname;
  1961. X+ }    troff_fonts[MAX_TROFF_FONTS];
  1962. X+ 
  1963. END_OF_FILE
  1964. if test 276 -ne `wc -c <'troff_fonts.h.diff'`; then
  1965.     echo shar: \"'troff_fonts.h.diff'\" unpacked with wrong size!
  1966. fi
  1967. # end of 'troff_fonts.h.diff'
  1968. fi
  1969. if test -f 'troff_ft_codes.diff' -a "${1}" != "-c" ; then 
  1970.   echo shar: Will not clobber existing file \"'troff_ft_codes.diff'\"
  1971. else
  1972. echo shar: Extracting \"'troff_ft_codes.diff'\" \(1067 characters\)
  1973. sed "s/^X//" >'troff_ft_codes.diff' <<'END_OF_FILE'
  1974. X*** /dev/null    Tue Mar 27 16:38:25 1990
  1975. X--- troff_ft_codes    Tue Mar 27 16:35:31 1990
  1976. X***************
  1977. X*** 0 ****
  1978. X--- 1,40 ----
  1979. X+ #    map of laserwriter font names to troff 2 letter codes
  1980. X+ #    for use by f2p, the xfig to pic translator
  1981. X+ #    normal path: /usr/lib/X11/troff/troff_ft_codes
  1982. X+ 
  1983. X+ R    Times-Roman
  1984. X+ I    Times-Italic
  1985. X+ B    Times-Bold
  1986. X+ BI    Times-BoldItalic
  1987. X+ AR    AvantGarde
  1988. X+ AO    AvantGarde-BookOblique
  1989. X+ AB    AvantGarde-Demi
  1990. X+ AX    AvantGarde-DemiOblique
  1991. X+ K    Bookman-Light
  1992. X+ KO    Bookman-LightItalic
  1993. X+ KB    Bookman-Demi
  1994. X+ KX    Bookman-DemiItalic
  1995. X+ C    Courier
  1996. X+ CO    Courier-Oblique
  1997. X+ CB    Courier-Bold
  1998. X+ CX    Courier-BoldItalic
  1999. X+ H    Helvetica
  2000. X+ HO    Helvetica-Oblique
  2001. X+ HB    Helvetica-Bold
  2002. X+ HX    Helvetica-BoldOblique
  2003. X+ h    Helvetica-Narrow
  2004. X+ hO    Helvetica-Narrow-Oblique
  2005. X+ hB    Helvetica-Narrow-Bold
  2006. X+ hX    Helvetica-Narrow-BoldOblique
  2007. X+ NR    NewCenturySchlbk-Roman
  2008. X+ NI    NewCenturySchlbk-Italic
  2009. X+ NB    NewCenturySchlbk-Bold
  2010. X+ NX    NewCenturySchlbk-BoldItalic
  2011. X+ PR    Palatino-Roman
  2012. X+ PI    Palatino-Italic
  2013. X+ PB    Palatino-Bold
  2014. X+ PX    Palatino-BoldItalic
  2015. X+ S    Symbol
  2016. X+ ZC    ZapfChancery-MediumItalic
  2017. X+ ZD    ZapfDingbats
  2018. X+ 
  2019. END_OF_FILE
  2020. if test 1067 -ne `wc -c <'troff_ft_codes.diff'`; then
  2021.     echo shar: \"'troff_ft_codes.diff'\" unpacked with wrong size!
  2022. fi
  2023. # end of 'troff_ft_codes.diff'
  2024. fi
  2025. echo shar: End of archive 1 \(of 7\).
  2026. cp /dev/null ark1isdone
  2027. MISSING=""
  2028. for I in 1 2 3 4 5 6 7 ; do
  2029.     if test ! -f ark${I}isdone ; then
  2030.     MISSING="${MISSING} ${I}"
  2031.     fi
  2032. done
  2033. if test "${MISSING}" = "" ; then
  2034.     echo You have unpacked all 7 archives.
  2035.     rm -f ark[1-9]isdone
  2036. else
  2037.     echo You still need to unpack the following archives:
  2038.     echo "        " ${MISSING}
  2039. fi
  2040. ##  End of shell archive.
  2041. exit 0
  2042.  
  2043. dan
  2044. -----------------------------------------------------------
  2045.             O'Reilly && Associates
  2046.         argv@sun.com / argv@ora.com
  2047.        632 Petaluma Ave, Sebastopol, CA 95472 
  2048.      800-338-NUTS, in CA: 800-533-NUTS, FAX 707-829-0104
  2049.     Opinions expressed reflect those of the author only.
  2050.